var db = require('../db')
var bcrypt = require("../utils/bcrypt")
var jwt = require("../utils/jwt")

const login = (req, res, next) => {
  // 1.获取前端传递来的用户名与密码
  let { username, password } = req.body
  // 2.验证必传参数
  if (!username || !password) {
    res.send({
      err: 1,
      msg: "用户名与密码为必传参数..."
    })
    return
  }
  const sql = 'select * from users2 where isdel = 0'
  db.query(sql, [], results => {
    // 代表用户在数据库是存在的 
    if (results.length > 0) {
      // 登录的密码与数据库里面的密码进行校验
      // let flag = bcrypt.compareSync(ps, results[0].password)
      // console.log(flag)
      if (username == results[0].username && password == results[0].password) {
        // 生成 登录成功（token)
        let token = jwt.sign({ username, _id: results[0].id })
        delete results[0].username
        delete results[0].password
        res.send({
          status: 0,
          msg: "恭喜您，登录成功！",
          token,
          data: results[0]
        })
      } else {
        res.send({ err: 1, msg: "用户名或者密码输入有误..." })
      }
    } else {
      res.send({ status: 1, msg: "此用户不存在，请注册！" })
    }
  })
}

module.exports = login